package com.njkwt.business.system.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class RelevanceExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public RelevanceExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("Id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("Id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("Id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("Id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("Id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("Id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("Id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("Id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("Id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("Id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("Id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("Id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("Id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("Id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNull() {
            addCriterion("Description is null");
            return (Criteria) this;
        }

        public Criteria andDescriptionIsNotNull() {
            addCriterion("Description is not null");
            return (Criteria) this;
        }

        public Criteria andDescriptionEqualTo(String value) {
            addCriterion("Description =", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotEqualTo(String value) {
            addCriterion("Description <>", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThan(String value) {
            addCriterion("Description >", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("Description >=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThan(String value) {
            addCriterion("Description <", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLessThanOrEqualTo(String value) {
            addCriterion("Description <=", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionLike(String value) {
            addCriterion("Description like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotLike(String value) {
            addCriterion("Description not like", value, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionIn(List<String> values) {
            addCriterion("Description in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotIn(List<String> values) {
            addCriterion("Description not in", values, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionBetween(String value1, String value2) {
            addCriterion("Description between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andDescriptionNotBetween(String value1, String value2) {
            addCriterion("Description not between", value1, value2, "description");
            return (Criteria) this;
        }

        public Criteria andKeyIsNull() {
            addCriterion("`Key` is null");
            return (Criteria) this;
        }

        public Criteria andKeyIsNotNull() {
            addCriterion("`Key` is not null");
            return (Criteria) this;
        }

        public Criteria andKeyEqualTo(String value) {
            addCriterion("`Key` =", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyNotEqualTo(String value) {
            addCriterion("`Key` <>", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyGreaterThan(String value) {
            addCriterion("`Key` >", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyGreaterThanOrEqualTo(String value) {
            addCriterion("`Key` >=", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyLessThan(String value) {
            addCriterion("`Key` <", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyLessThanOrEqualTo(String value) {
            addCriterion("`Key` <=", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyLike(String value) {
            addCriterion("`Key` like", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyNotLike(String value) {
            addCriterion("`Key` not like", value, "key");
            return (Criteria) this;
        }

        public Criteria andKeyIn(List<String> values) {
            addCriterion("`Key` in", values, "key");
            return (Criteria) this;
        }

        public Criteria andKeyNotIn(List<String> values) {
            addCriterion("`Key` not in", values, "key");
            return (Criteria) this;
        }

        public Criteria andKeyBetween(String value1, String value2) {
            addCriterion("`Key` between", value1, value2, "key");
            return (Criteria) this;
        }

        public Criteria andKeyNotBetween(String value1, String value2) {
            addCriterion("`Key` not between", value1, value2, "key");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("`Status` is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("`Status` is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("`Status` =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("`Status` <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("`Status` >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("`Status` >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("`Status` <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("`Status` <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("`Status` in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("`Status` not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("`Status` between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("`Status` not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andOperatetimeIsNull() {
            addCriterion("OperateTime is null");
            return (Criteria) this;
        }

        public Criteria andOperatetimeIsNotNull() {
            addCriterion("OperateTime is not null");
            return (Criteria) this;
        }

        public Criteria andOperatetimeEqualTo(Date value) {
            addCriterion("OperateTime =", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeNotEqualTo(Date value) {
            addCriterion("OperateTime <>", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeGreaterThan(Date value) {
            addCriterion("OperateTime >", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeGreaterThanOrEqualTo(Date value) {
            addCriterion("OperateTime >=", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeLessThan(Date value) {
            addCriterion("OperateTime <", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeLessThanOrEqualTo(Date value) {
            addCriterion("OperateTime <=", value, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeIn(List<Date> values) {
            addCriterion("OperateTime in", values, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeNotIn(List<Date> values) {
            addCriterion("OperateTime not in", values, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeBetween(Date value1, Date value2) {
            addCriterion("OperateTime between", value1, value2, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatetimeNotBetween(Date value1, Date value2) {
            addCriterion("OperateTime not between", value1, value2, "operatetime");
            return (Criteria) this;
        }

        public Criteria andOperatoridIsNull() {
            addCriterion("OperatorId is null");
            return (Criteria) this;
        }

        public Criteria andOperatoridIsNotNull() {
            addCriterion("OperatorId is not null");
            return (Criteria) this;
        }

        public Criteria andOperatoridEqualTo(String value) {
            addCriterion("OperatorId =", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridNotEqualTo(String value) {
            addCriterion("OperatorId <>", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridGreaterThan(String value) {
            addCriterion("OperatorId >", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridGreaterThanOrEqualTo(String value) {
            addCriterion("OperatorId >=", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridLessThan(String value) {
            addCriterion("OperatorId <", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridLessThanOrEqualTo(String value) {
            addCriterion("OperatorId <=", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridLike(String value) {
            addCriterion("OperatorId like", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridNotLike(String value) {
            addCriterion("OperatorId not like", value, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridIn(List<String> values) {
            addCriterion("OperatorId in", values, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridNotIn(List<String> values) {
            addCriterion("OperatorId not in", values, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridBetween(String value1, String value2) {
            addCriterion("OperatorId between", value1, value2, "operatorid");
            return (Criteria) this;
        }

        public Criteria andOperatoridNotBetween(String value1, String value2) {
            addCriterion("OperatorId not between", value1, value2, "operatorid");
            return (Criteria) this;
        }

        public Criteria andFirstidIsNull() {
            addCriterion("FirstId is null");
            return (Criteria) this;
        }

        public Criteria andFirstidIsNotNull() {
            addCriterion("FirstId is not null");
            return (Criteria) this;
        }

        public Criteria andFirstidEqualTo(String value) {
            addCriterion("FirstId =", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidNotEqualTo(String value) {
            addCriterion("FirstId <>", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidGreaterThan(String value) {
            addCriterion("FirstId >", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidGreaterThanOrEqualTo(String value) {
            addCriterion("FirstId >=", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidLessThan(String value) {
            addCriterion("FirstId <", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidLessThanOrEqualTo(String value) {
            addCriterion("FirstId <=", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidLike(String value) {
            addCriterion("FirstId like", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidNotLike(String value) {
            addCriterion("FirstId not like", value, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidIn(List<String> values) {
            addCriterion("FirstId in", values, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidNotIn(List<String> values) {
            addCriterion("FirstId not in", values, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidBetween(String value1, String value2) {
            addCriterion("FirstId between", value1, value2, "firstid");
            return (Criteria) this;
        }

        public Criteria andFirstidNotBetween(String value1, String value2) {
            addCriterion("FirstId not between", value1, value2, "firstid");
            return (Criteria) this;
        }

        public Criteria andSecondidIsNull() {
            addCriterion("SecondId is null");
            return (Criteria) this;
        }

        public Criteria andSecondidIsNotNull() {
            addCriterion("SecondId is not null");
            return (Criteria) this;
        }

        public Criteria andSecondidEqualTo(String value) {
            addCriterion("SecondId =", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidNotEqualTo(String value) {
            addCriterion("SecondId <>", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidGreaterThan(String value) {
            addCriterion("SecondId >", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidGreaterThanOrEqualTo(String value) {
            addCriterion("SecondId >=", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidLessThan(String value) {
            addCriterion("SecondId <", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidLessThanOrEqualTo(String value) {
            addCriterion("SecondId <=", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidLike(String value) {
            addCriterion("SecondId like", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidNotLike(String value) {
            addCriterion("SecondId not like", value, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidIn(List<String> values) {
            addCriterion("SecondId in", values, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidNotIn(List<String> values) {
            addCriterion("SecondId not in", values, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidBetween(String value1, String value2) {
            addCriterion("SecondId between", value1, value2, "secondid");
            return (Criteria) this;
        }

        public Criteria andSecondidNotBetween(String value1, String value2) {
            addCriterion("SecondId not between", value1, value2, "secondid");
            return (Criteria) this;
        }

        public Criteria andThirdidIsNull() {
            addCriterion("ThirdId is null");
            return (Criteria) this;
        }

        public Criteria andThirdidIsNotNull() {
            addCriterion("ThirdId is not null");
            return (Criteria) this;
        }

        public Criteria andThirdidEqualTo(String value) {
            addCriterion("ThirdId =", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidNotEqualTo(String value) {
            addCriterion("ThirdId <>", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidGreaterThan(String value) {
            addCriterion("ThirdId >", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidGreaterThanOrEqualTo(String value) {
            addCriterion("ThirdId >=", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidLessThan(String value) {
            addCriterion("ThirdId <", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidLessThanOrEqualTo(String value) {
            addCriterion("ThirdId <=", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidLike(String value) {
            addCriterion("ThirdId like", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidNotLike(String value) {
            addCriterion("ThirdId not like", value, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidIn(List<String> values) {
            addCriterion("ThirdId in", values, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidNotIn(List<String> values) {
            addCriterion("ThirdId not in", values, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidBetween(String value1, String value2) {
            addCriterion("ThirdId between", value1, value2, "thirdid");
            return (Criteria) this;
        }

        public Criteria andThirdidNotBetween(String value1, String value2) {
            addCriterion("ThirdId not between", value1, value2, "thirdid");
            return (Criteria) this;
        }

        public Criteria andExtendinfoIsNull() {
            addCriterion("ExtendInfo is null");
            return (Criteria) this;
        }

        public Criteria andExtendinfoIsNotNull() {
            addCriterion("ExtendInfo is not null");
            return (Criteria) this;
        }

        public Criteria andExtendinfoEqualTo(String value) {
            addCriterion("ExtendInfo =", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoNotEqualTo(String value) {
            addCriterion("ExtendInfo <>", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoGreaterThan(String value) {
            addCriterion("ExtendInfo >", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoGreaterThanOrEqualTo(String value) {
            addCriterion("ExtendInfo >=", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoLessThan(String value) {
            addCriterion("ExtendInfo <", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoLessThanOrEqualTo(String value) {
            addCriterion("ExtendInfo <=", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoLike(String value) {
            addCriterion("ExtendInfo like", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoNotLike(String value) {
            addCriterion("ExtendInfo not like", value, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoIn(List<String> values) {
            addCriterion("ExtendInfo in", values, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoNotIn(List<String> values) {
            addCriterion("ExtendInfo not in", values, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoBetween(String value1, String value2) {
            addCriterion("ExtendInfo between", value1, value2, "extendinfo");
            return (Criteria) this;
        }

        public Criteria andExtendinfoNotBetween(String value1, String value2) {
            addCriterion("ExtendInfo not between", value1, value2, "extendinfo");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}